SELECT  
A.NF_SAIDA,
B.PRODUTO,
B.COR_PRODUTO,
cast(
CASE WHEN B.F1 > 0 THEN E.TAMANHO_1
ELSE '' END +
CASE WHEN B.F2 > 0 THEN E.TAMANHO_2
ELSE '' END +
CASE WHEN B.F3 > 0 THEN E.TAMANHO_3
ELSE '' END  +
CASE WHEN B.F4 > 0 THEN E.TAMANHO_4
ELSE '' END + 
CASE WHEN B.F5 > 0 THEN E.TAMANHO_5
ELSE '' END +
CASE WHEN B.F6 > 0 THEN E.TAMANHO_6
ELSE '' END +
CASE WHEN B.F7 > 0 THEN E.TAMANHO_7
ELSE '' END +
CASE WHEN B.F8 > 0 THEN E.TAMANHO_8
ELSE '' END +
CASE WHEN B.F9 > 0 THEN E.TAMANHO_9
ELSE '' END +
CASE WHEN B.F10 > 0 THEN E.TAMANHO_10
ELSE '' END +
CASE WHEN B.F11 > 0 THEN E.TAMANHO_11
ELSE '' END +
CASE WHEN B.F12 > 0 THEN E.TAMANHO_12
ELSE '' END +
CASE WHEN B.F13 > 0 THEN E.TAMANHO_13
ELSE '' END +
CASE WHEN B.F14 > 0 THEN E.TAMANHO_14
ELSE '' END +
CASE WHEN B.F15 > 0 THEN E.TAMANHO_15
ELSE '' END +
CASE WHEN B.F16 > 0 THEN E.TAMANHO_16
ELSE '' END +
CASE WHEN B.F17 > 0 THEN E.TAMANHO_17
ELSE '' END +
CASE WHEN B.F18 > 0 THEN E.TAMANHO_18
ELSE '' END +
CASE WHEN B.F19 > 0 THEN E.TAMANHO_19
ELSE '' END +
CASE WHEN B.F20 > 0 THEN E.TAMANHO_20
ELSE '' END +
CASE WHEN B.F21 > 0 THEN E.TAMANHO_21
ELSE '' END +
CASE WHEN B.F22 > 0 THEN E.TAMANHO_22
ELSE '' END +
CASE WHEN B.F23 > 0 THEN E.TAMANHO_23
ELSE '' END +
CASE WHEN B.F24 > 0 THEN E.TAMANHO_24
ELSE '' END +
CASE WHEN B.F25 > 0 THEN E.TAMANHO_25
ELSE '' END +
CASE WHEN B.F26 > 0 THEN E.TAMANHO_26
ELSE '' END +
CASE WHEN B.F27 > 0 THEN E.TAMANHO_27
ELSE '' END +
CASE WHEN B.F28 > 0 THEN E.TAMANHO_28
ELSE '' END +
CASE WHEN B.F29 > 0 THEN E.TAMANHO_29
ELSE '' END +
CASE WHEN B.F30 > 0 THEN E.TAMANHO_30
ELSE '' END +
CASE WHEN B.F31 > 0 THEN E.TAMANHO_31
ELSE '' END +
CASE WHEN B.F32 > 0 THEN E.TAMANHO_32
ELSE '' END +
CASE WHEN B.F33 > 0 THEN E.TAMANHO_33
ELSE '' END +
CASE WHEN B.F34 > 0 THEN E.TAMANHO_34
ELSE '' END +
CASE WHEN B.F35 > 0 THEN E.TAMANHO_35
ELSE '' END +
CASE WHEN B.F36 > 0 THEN E.TAMANHO_36
ELSE '' END +
CASE WHEN B.F37 > 0 THEN E.TAMANHO_37
ELSE '' END +
CASE WHEN B.F38 > 0 THEN E.TAMANHO_38
ELSE '' END +
CASE WHEN B.F39 > 0 THEN E.TAMANHO_39
ELSE '' END +
CASE WHEN B.F40 > 0 THEN E.TAMANHO_40
ELSE '' END +
CASE WHEN B.F41 > 0 THEN E.TAMANHO_41
ELSE '' END +
CASE WHEN B.F42 > 0 THEN E.TAMANHO_42
ELSE '' END +
CASE WHEN B.F43 > 0 THEN E.TAMANHO_43
ELSE '' END +
CASE WHEN B.F44 > 0 THEN E.TAMANHO_44
ELSE '' END +
CASE WHEN B.F45 > 0 THEN E.TAMANHO_45
ELSE '' END +
CASE WHEN B.F46 > 0 THEN E.TAMANHO_46
ELSE '' END +
CASE WHEN B.F47 > 0 THEN E.TAMANHO_47
ELSE '' END +
CASE WHEN B.F48 > 0 THEN E.TAMANHO_48
ELSE '' END 
as varchar(8)) as TAMANHO,
SUM(B.F1+B.F2+B.F3+B.F4+B.F5+B.F6+B.F7+B.F8+B.F9+B.F10+B.F11+B.F12+B.F13+B.F14+B.F15+
B.F16+B.F17+B.F18+B.F19+B.F20+B.F21+B.F22+B.F23+B.F24+B.F25+B.F26+B.F27+B.F28+B.F29+
B.F30+B.F31+B.F32+B.F33+B.F34+B.F35+B.F36+B.F37+B.F38+B.F39+B.F40+B.F41+B.F42+
B.F43+B.F44+B.F45+B.F46+B.F47+B.F48) AS QTD,
SUM(B.PRECO) AS VALOR
FROM faturamento A
JOIN FATURAMENTO_PROD B ON (A.FILIAL = B.FILIAL  AND A.NF_SAIDA = B.NF_SAIDA AND A.SERIE_NF = B.SERIE_NF)
join PRODUTOS D on (B.produto = D.produto)
JOIN PRODUTOS_TAMANHOS E ON (D.GRADE = E.GRADE)
where A.NF_SAIDA in ('286401','286402','286403')
GROUP BY A.NF_SAIDA,B.PRODUTO,B.COR_PRODUTO,
cast(
CASE WHEN B.F1 > 0 THEN E.TAMANHO_1
ELSE '' END +
CASE WHEN B.F2 > 0 THEN E.TAMANHO_2
ELSE '' END +
CASE WHEN B.F3 > 0 THEN E.TAMANHO_3
ELSE '' END  +
CASE WHEN B.F4 > 0 THEN E.TAMANHO_4
ELSE '' END + 
CASE WHEN B.F5 > 0 THEN E.TAMANHO_5
ELSE '' END +
CASE WHEN B.F6 > 0 THEN E.TAMANHO_6
ELSE '' END +
CASE WHEN B.F7 > 0 THEN E.TAMANHO_7
ELSE '' END +
CASE WHEN B.F8 > 0 THEN E.TAMANHO_8
ELSE '' END +
CASE WHEN B.F9 > 0 THEN E.TAMANHO_9
ELSE '' END +
CASE WHEN B.F10 > 0 THEN E.TAMANHO_10
ELSE '' END +
CASE WHEN B.F11 > 0 THEN E.TAMANHO_11
ELSE '' END +
CASE WHEN B.F12 > 0 THEN E.TAMANHO_12
ELSE '' END +
CASE WHEN B.F13 > 0 THEN E.TAMANHO_13
ELSE '' END +
CASE WHEN B.F14 > 0 THEN E.TAMANHO_14
ELSE '' END +
CASE WHEN B.F15 > 0 THEN E.TAMANHO_15
ELSE '' END +
CASE WHEN B.F16 > 0 THEN E.TAMANHO_16
ELSE '' END +
CASE WHEN B.F17 > 0 THEN E.TAMANHO_17
ELSE '' END +
CASE WHEN B.F18 > 0 THEN E.TAMANHO_18
ELSE '' END +
CASE WHEN B.F19 > 0 THEN E.TAMANHO_19
ELSE '' END +
CASE WHEN B.F20 > 0 THEN E.TAMANHO_20
ELSE '' END +
CASE WHEN B.F21 > 0 THEN E.TAMANHO_21
ELSE '' END +
CASE WHEN B.F22 > 0 THEN E.TAMANHO_22
ELSE '' END +
CASE WHEN B.F23 > 0 THEN E.TAMANHO_23
ELSE '' END +
CASE WHEN B.F24 > 0 THEN E.TAMANHO_24
ELSE '' END +
CASE WHEN B.F25 > 0 THEN E.TAMANHO_25
ELSE '' END +
CASE WHEN B.F26 > 0 THEN E.TAMANHO_26
ELSE '' END +
CASE WHEN B.F27 > 0 THEN E.TAMANHO_27
ELSE '' END +
CASE WHEN B.F28 > 0 THEN E.TAMANHO_28
ELSE '' END +
CASE WHEN B.F29 > 0 THEN E.TAMANHO_29
ELSE '' END +
CASE WHEN B.F30 > 0 THEN E.TAMANHO_30
ELSE '' END +
CASE WHEN B.F31 > 0 THEN E.TAMANHO_31
ELSE '' END +
CASE WHEN B.F32 > 0 THEN E.TAMANHO_32
ELSE '' END +
CASE WHEN B.F33 > 0 THEN E.TAMANHO_33
ELSE '' END +
CASE WHEN B.F34 > 0 THEN E.TAMANHO_34
ELSE '' END +
CASE WHEN B.F35 > 0 THEN E.TAMANHO_35
ELSE '' END +
CASE WHEN B.F36 > 0 THEN E.TAMANHO_36
ELSE '' END +
CASE WHEN B.F37 > 0 THEN E.TAMANHO_37
ELSE '' END +
CASE WHEN B.F38 > 0 THEN E.TAMANHO_38
ELSE '' END +
CASE WHEN B.F39 > 0 THEN E.TAMANHO_39
ELSE '' END +
CASE WHEN B.F40 > 0 THEN E.TAMANHO_40
ELSE '' END +
CASE WHEN B.F41 > 0 THEN E.TAMANHO_41
ELSE '' END +
CASE WHEN B.F42 > 0 THEN E.TAMANHO_42
ELSE '' END +
CASE WHEN B.F43 > 0 THEN E.TAMANHO_43
ELSE '' END +
CASE WHEN B.F44 > 0 THEN E.TAMANHO_44
ELSE '' END +
CASE WHEN B.F45 > 0 THEN E.TAMANHO_45
ELSE '' END +
CASE WHEN B.F46 > 0 THEN E.TAMANHO_46
ELSE '' END +
CASE WHEN B.F47 > 0 THEN E.TAMANHO_47
ELSE '' END +
CASE WHEN B.F48 > 0 THEN E.TAMANHO_48
ELSE '' END 
as varchar(8))
